/******************************************************************************/
/*                                                                            */
/*  Copyright (c) 2009: ngi-central.org                                       */
/*  All rights reserved.                                                      */
/*                                                                            */
/******************************************************************************/


/// \file
/// This file implements global settings.


#ifndef __sgl_global_settings_h__
#define __sgl_global_settings_h__


#ifndef SGL_FPTYPE
/// The default floating point type.
//!
//! The default floating point type is the type which is used by all of the
//! SGL classes by default. If this is not defined elsewhere, it defaults to
//! double.
#define SGL_FPTYPE double
#endif

/*
// Settings needed for Microsoft Visual Studio
#if _MSC_VER

	#if _MSC_VER == 1400
		// This is needed with VC8 in order to get rid of the 
		//	"warning C4996: 'std::*' was declared deprecated"
		// warnings.
		#define _SCL_SECURE_NO_DEPRECATE
	#endif // _MSC_VER == 1400

	// Switch off warning C4355: 
	// 'this' : used in base member initializer list
	#pragma warning ( disable : 4355 )

	// Switch off warning C4996:
	// '*': Function call with parameters that may be unsafe - this call relies 
	// on the caller to check that the passed values are correct. To disable 
	// this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to 
	// use Visual C++ 'Checked Iterators'
	#define _SCL_SECURE_NO_WARNINGS

	// OpenMP supprt
	#ifdef _OPENMP
		#include <omp.h>
	#endif

#endif // _MSC_VER


// Settings needed for the Windows headers, define and detect if not sufficient
#ifndef _WIN32_WINNT
	#define _WIN32_WINNT 0x0500		// minimum requirement
#endif
#if _WIN32_WINNT < 0x0500
	#error _WIN32_WINNT must be 0x0500 or higher.
#endif

#ifndef WINVER
	#define WINVER 0x0500			// minimum requirement
#endif
#if WINVER < 0x0500
	#error WINVER must be 0x0500 or higher.
#endif

	*/

#endif // __sgl_global_settings_h__
